package com.z.sys.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.z.common.web.base.BaseEntity;
import lombok.Data;

import java.util.ArrayList;
import java.util.List;

/**
 * 权限资源管理实体
 *
 * @author z
 * @date 2022-11-07
 */
@Data
@TableName("t_permission")
public class Permission extends BaseEntity{

    /** 权限主键 */
    @TableId(type = IdType.AUTO)
    private Long id;

    /** 权限名称 */
    private String name;

    /** 权限标识 */
    private String permission;

    /** 类型 */
    private Long type;

    /** 跳转地址 */
    private String href;

    /** 排序 */
    private Long sort;

    /** 上级id */
    private Long parentId;

    /** 打开方式 */
    private int openType;

    /** 图标 */
    private String icon;

    /** 是否启用 */
    private int enable;

    /**
     * 子菜单
     */
    @TableField(exist = false)
    private List<Permission> children = new ArrayList<>();

    /**
     * 计算列 提供给前端组件
     */
    @TableField(exist = false)
    private String checkArr = "0";

}
